Temporal placement control of video frames in B-ISDN networks

ABSTRACT

Methods of traffic smoothing for frames of different video sources where each video source transmits frames at fixed intervals and the network is free to decide the relative temporal spacing of video frames from different sources provide significant performance advantages. The time at which a given source begins to transmit its first frame is under the control of the network; however, thereafter, all frames from the source are transmitted at fixed intervals. Two heuristic and one optimization method control the temporal placement of the video frames from different sources in order to reduce the loss rate of the high priority cells and to minimize the smoothness index of the traffic.

FIELD OF THE INVENTION

The present invention relates to methods of traffic smoothing for frames of different video sources in Broadband Integrated Services Digital Networks.

BACKGROUND OF THE INVENTION

A recurring problem in traffic studies of Broadband Integrated Services Digital Networks (B-ISDN) is the finding of methods by which traffic can be smoothed so that the network does not have to concern itself with extreme variations in bit-rates. Heretofore, this problem was addressed by means of flow control (using a leaky bucket and its variants) and congestion control (e.g. distributed source control, stop and go queuing, feedback control methods and dynamic window methods).

The present invention addresses a problem similar in nature to flow control but which is very different in terms of its objectives and scope.

SUMMARY OF THE INVENTION

In order to better understand the present invention, consider a statistical multiplexer at a network ingress which is receiving traffic from various video sources. Assume that there are K types of video calls. Type k calls arrive according to a Poisson process at a rate λ_(k) and their call durations have a general distribution with mean 1/μ_(k). Each call, while in progress, generates a frame every τ ms (τis 33 in most applications). The number of Mbits in a frame is modelled by using the video sources studied by Verbiest and Pinnoo in an article "A Variable Rate Video CODEC for Asynchronous Transfer Mode Networks", in IEEE Journal on Selected Areas in Communications, 7(5), PP 761-770, Jun. 1989. Assume that the output channel rate of the multiplexer is C (e.g., C=150 Mbps) and that the input channel rate for call type k is R_(k) (e.g., R_(k) =150 Mbps). When a source of type k transmits, it transmits a full frame as a burst at rate R_(k), without any gaps. Thus if a particular frame has X Mbits, the source of type k transmits for X×10³ /R_(k) ms and then remains silent for τ-X×10³ /R_(k) ms. Assume that the stationary distribution of X_(k) (the frame size) for type k calls is given by G_(k) (x), whose mean is g_(k) (in Mbits). This implies that the mean bit-rate of a type k call is g_(k) ×10³ /τMbps. The multiplexer adopts the following admission control strategy. When a new video call arrives, the mean bit-rate of all currently active calls is added with the new call. The new call is admitted if this sum is less than or equal to σ times C (the output channel capacity of the multiplexer), otherwise it is not admitted. Now assume that marks are placed on the time axis at 0, τ, 2τ, . . . ms and with each source j is an offset O_(j) (O<O_(j) <τ). This means that the frames corresponding to source j begin to arrive at the multiplexer at times O_(j), τ+O_(j), 2τ+O_(j), . . . Let k_(j) denote the type of call for source j. If the ith frame from source j is of size X_(kj) (i) (in Mbits), then the ith frame from source j is received at the multiplexer over the interval [(i-1)τ+O_(j), (i-1)τ+O_(j) +X_(k) _(j) (i)×10³ /R_(k) _(j) ]. If no control is exercised on the video sources, then O_(j) is assumed to be uniformly distributed between O and τ. If this happens, then it is possible that the start times of the frames belonging to the currently active sources are temporally very close to one another, which may result in high input rate for some time (and consequently, lead to lost packets) and poor performance. To alleviate this situation, a mechanism is needed which prevents the frames from different sources from being transmitted at or about the same time (i.e., prevent the frames from bunching). That is, the start time of the frames from different sources should be evenly spread out over the interval of τ ms. If this could be achieved, it should be possible to achieve less packet loss and better performance. Assume that this control is effected by the network by picking any value of O_(j) it chooses. This choice is exercised only once per call, at the time of call admission. Once this number is determined for a particular call, it cannot be changed at a later time for the entire call duration (otherwise it may lead to synchronization problems at the destination). The problem is to find optimal methods of determining the value O_(j) for a newly arrived call, given that the offsets of the currently active calls are known. The present invention provides solutions to the problem.

A principal object of the present invention is therefore, the provision of a method of temporal placement control of video frames in a B-ISDN network.

An object of the present invention is the provision of a midpoint method of temporal placement control of video frames.

A further object of the present invention is the provision of a smaller interval method of temporal placement control of video frames.

Another object of the present invention is the provision of an optimization method of temporal placement control of video frames.

A still further object of the present invention is the provision of a method of temporal placement control of video frames for reducing the loss rate of the high priority cells.

A still another object of the present invention is the provision of a method of interval placement control of video frames for minimizing the smoothness index of the traffic.

Further and still other objects of the present invention will become more clearly apparent when the following description is read in conjunction with the accompanying drawing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a graphical presentation of the midpoint method of practicing the present invention;

FIG. 2 is a graphical representation of the smallest interval method of practicing the present invention;

FIG. 3 is a graphical representation of high priority cell loss rate when practicing the present invention in the case of homogeneous video sources;

FIG. 4 is a graphical representation of high priority cell loss rate when practicing the present

invention in the case of heterogeneous video sources and three type 1 sources;

FIG. 5 is a graphical representation of high priority cell loss rate when practicing the present invention in the case of heterogeneous video sources and five type 1 sources;

FIG. 6 is a graphical representation of low priority cell loss rate when practicing the present invention in the case of heterogeneous video sources and three type 1 sources; and

FIG. 7 is a graphical representation of the complementary distribution of queue length when practicing the present invention in the case of heterogeneous video sources.

DETAILED DESCRIPTION

A first preferred method of practicing the present invention is referred to as the midpoint method. In accordance with the midpoint method, a circle is drawn having a circumference equal to the value τ (inter-frame interval). The offsets O_(j) for the jth active call is drawn on the circumference of the circle. The 12 O'clock position is used for an offset of zero and the offsets are measured in the clockwise direction from the 12 O'clock position. Thus, any interval of the type [(i-1)τ, iτ] along the time axis is represented by the circle, with the 12 O'clock point representing the point iτ for i=1, 2, . . . For example, if there are n-1 active calls, the circumference of the circle is divided into n-1 intervals. If O₁ ≦O₂ ≦. . . ≦O_(n-1), then the intervals are (O_(j), O_(j+1)) for j=1, . . . , n13 2 and the last interval is from O_(n-1) to O₁ in the clockwise direction. The largest interval is selected and the midpoint of the selected interval is chosen as the offset for the newly arrived call. The concept underlying the midpoint method is that as calls depart, they do so in a random manner. The randomness in departures could result in the remaining calls being bunched together. However, the midpoint method alleviates the bunching effect by choosing an offset which fills empty areas.

A second preferred method of practicing the present invention is referred to as the smallest interval method. In this method, a circle is drawn having a circumference τ as before. For each source, an interval is defined over which the source is expected to transmit. If there are n active sources and k_(j) denotes the type of source j, then this interval for source j is defined as [O_(j), E_(j) ], where E_(j) ={O_(j) +g_(k) _(j) ×10³ /R_(k) _(j) }, where R_(k) _(j) is the access line speed. Here, the angle brackets ({ }) refer to modulo- τ arithmetic, so that all numbers remain between O and τ. These n intervals are drawn on the circle and shaded as shown, for example, in FIG. 2. The shaded regions are areas with higher probability during which the currently active sources are transmitting. Therefore, the newly arrived source is made to transmit during the unshaded areas. The method requires defining an interval of length g_(k) _(n) ×10³ /R_(k) _(n) for the nth call and then trying to locate the nth call in the smallest unshaded interval at least as large as the interval of the nth call. The locating is done so that O_(n) =E_(j) for some j(j=1, . . ., n-1). The result is that the shaded regions from two sources will be located end-to-end on the circle. Note that as calls depart, unshaded gaps on the circle will be created. It is possible that at some time, all of the unshaded intervals may be too small to locate the newly arrived call. In such event, the previously described midpoint method is used.

A third preferred method of practicing the present invention, based on an optimization problem, will now be described. Assume that n-1 calls are currently in progress whose call types (k_(j)) access line speeds (R_(k) _(j)) and offsets (O_(j)) are known (for j=1, . . . , n-1). Assume further that call n is of type k_(n) and has an offset O_(n), which is to be determined. From the knowledge of the parameters, it is possible to determine the expected bit-rate at time t, for O<t<τ. The expected bit rate is P_(n) (t,O₁, . . . , O_(n)). To clarify the meaning of P_(n) (.) further, the value of ∫² _(o) P_(n) (t,.)dt is the expected number of Mbits transmitted in the interval (O, x). The present optimization method attempts to choose a value of O_(n) in such a manner that the function P_(n) (.) has the greatest smoothness property. That is, O_(n) is chosen to minimize ##EQU1##

Minimizing this function is likely to reduce the extreme variation in bit-rates. The following is a description of how this is accomplished. There are two parts in this description. First, a method of solving the problems is discussed. Second, a method of speeding up the convergence of the computations is shown.

Let G_(k) _(j) (x) denote the distribution function of the number of Mbits generated in a frame by source j and let G_(k) _(j) (x) denote its complementary function (i.e., G_(k) _(j) (x)=1-G_(k) _(j) (X)). Consider a source j for 1≦j≦n. First, assume that the offset O_(j) is zero. The expected number of Mbits that arrive during (t,t+dt) from source j can be obtained by the following argument. Assume that the number of Mbits generated by this source in a particular frame is x. If x>R_(k) _(j) t, the number of Mbits that arrive in (t,t+dt)is R_(k) _(j) dt. If x≦R_(k) _(j) t, the number of Mbits that arrive in (t,t+dt)is zero. Therefore, the expected bit-rate at time t for source j is given by

    h.sub.j (t)=R.sub.k.sub.j G.sub.k.sub.j (R.sub.k.sub.j, t).

Note that h_(j) (t) is only defined for O≦t<τ. Define the periodic version of h_(j) (t) by h_(j) (t),i.e.,

    h.sub.j (t+kτ)=h.sub.j (t),

for k=0, 1, . . . If the offset O_(j) is not zero, the expected bit-rate at time t is given by

    ƒ.sub.j (t,O.sub.j)=h.sub.j (t-O.sub.j).

From the definition of P_(n) (t, O₁, O₂, . . . , O_(n)), the result is ##EQU2##

Next, it is necessary to find the optimal O_(n) that minimizes the variance of P_(n) (t, O₁,O₂, . . . , O_(n)), i.e., minimizes Eq.(1). But ##EQU3## dt is the expected number of Mbits transmitted in (0, τ)] and equals ##EQU4## So the problem is equivalent to ##EQU5##

To perform the minimization in Eq.(3), first assume that the number of Mbits generated by a video source of type k in a frame can be represented by a truncated and shifted second-degree Erlang random variable X_(k). This is a rich two parameter family of distributions (the parameters are α_(k) and S_(k)) which should meet most modeling needs. The density function of this random variable is ##EQU6## where B is a suitable normalization constant which makes the density integrate to one. Since τR_(k) (the number of Mbits that can be transmitted in time τ) is much greater than the expected value of X_(k), the normalization constant B is actually very close to one in Eq.(4). The numerical results below were obtained using values of K=1, 2. for source type 1, α₁ =9.411 (1/Mbits) and S₁ =3.467 (Mbits) were chosen. With these choices, the mean and standard deviation of X₁ turn out to be 0.559 Mbits and 0.15 Mbits. This is a good approximation because Verbiest and Pinnoo supra report a mean and standard deviation of 0.56 and 0.143 Mbits respectively. It is further assumed that the type 2 sources are a scaled version of type 1 sources by a factor of 0.5, then α₂ =α₁ /0.5 and S₂ =0.5S₁. Note that this scaling preserves all other characteristics (such as autocorrelations) of the sources of type 1.

The complementary distribution of X_(k) (k=1, . . . , K) is ##EQU7## The Fourier coefficients of h_(k) (t) are now given by ##EQU8## Note that a different assumption on G_(k) (x) in Eq. (5) would cause a different result for c_(m) (k). In all other respects, the methodology remains the same. Let {φ_(m) } denote the Fourier coefficients of P_(n) (t,O₁, . . . , O_(n)). Then, from Eq. (2), ##EQU9## Using Parseval's theorem, the result is ##EQU10## To carry out the minimization Eq. (3), allow L possible choices of O_(n) on a grid, so that O_(n) =τ(l-1)/L for l=1, . . . , L. Then choose that value of l which minimizes Eq. (6).

Now the second part will be addressed, i.e., the speed of convergence of the computations. Since c_(m) (k) is of the order m⁻¹, Eq. (6) has the same rate of convergence as the series Σm⁻². While this may be satisfactory in some applications, it is possible to speed up this rate of convergence further as described below. Define ##EQU11## Note that P_(n) (t, O₁, . . . , O_(n)) has n discontinuities at t=O₁, . . . , O_(n), while P^(*) _(n) (t, O₁, . . . , O_(n))

is continuous. Let {d_(m) } denote the Fourier coefficients of ##EQU12## Then ##EQU13## Let {φ^(*) _(m) } denote the Fourier coefficients of P^(*) _(n) (t, O₁, . . . , O_(n)). From Eq. (7),

    |φ.sub.m |.sup.2 =|φ.sup.*.sub.m -d.sub.m |.sup.2 =|φ.sup.*.sub.m |.sup.2 +|d.sub.m |.sup.2 =2Re(φ.sub.md.sub.m), (9)

where d_(m) is the complex conjugate of d_(m). Substitute Eq. (9) in Eq. (6) to get ##EQU14## The second term on the right hand side of Eq. (10) can be simplified as follows: ##EQU15##

Let B₂ (x)=x² -X+6⁻¹ denote the Bernoulli polynomial of second degree and let B₂ (x) be the periodic version of B₂ (x), i.e., B₂ (x+mτ)=B₂ (x) for m=0,1, . . . and O≦×<τ. From the well known identities ##EQU16## Eq. (10) becomes ##EQU17##

Since the derivative of P^(*) _(n) (t, O₁, . . . , O_(n)) with respect to t has bounded variation, φ^(*) _(m) is of order m⁻². Hence, Eq. (11) has the same convergence rate as the series Σm⁻³ which is much better than that of Eq. (6). It is possible to speed up the convergence rate even more by adding a quadratic (or higher order) term to Eq. (7), which guarantees the existence of the second (or higher order) derivative of P_(n) (t, O₁, . . . , O_(n)) with respect to t. However, this is possible at the cost of considerable extra effort. Moreover, very satisfactory results were obtained with the method presented above. This completes the description of the speed of convergence of the computations.

Having described the theoretical basis for the three preferred methods of practicing the invention, the effects of applying these methods by simulation will now be described. A fluid-flow model as described in the article by D.S. Lee, et al entitled, "TES Modeling for Analysis of a Video Multiplexer, in Performance Evaluation, Vol 16,. PP 21-34, 1992, is used in order to keep the run time for the simulations within reasonable limits. The number of Mbits in a frame (X_(k)) is modelled by using the sum of two autoregressive processes and a Markov chain. This model matches the bit-rate histogram and the autocorrelation function for video sources studied by Verbiest and Pinnoo supra. The mean bit-rate of these sources is 16.8 Mbps (which corresponds to 0.56 Mbits per frame). If K=2, then two types of sources are considered. One type of source which is high bit-rate and the other type of source whose bit-rate is scaled by a factor of 0.5 (i.e., half the bit-rate, but otherwise preserving all other characteristics of the sources). The sources arrive according to a Poisson process and may or may not be admitted to the multiplexer according to the admission control strategy described above. Thus, the number of active sources in the simulation changes with time. The call holding time is assumed to be distributed uniformly between 5400 and 9000 frames. It is assumed that a layered coding scheme has been employed and therefore, the primary interest is in the loss rate of the high priority cells. The buffer threshold to discard low priority cells is 50 (in cells) and the total buffer size of the multiplexer is 300 cells. In order to faithfully compare the three methods, four systems (three control policies and the system without control) are simulated subject to the same arrival processes and holding times of video sources. Specifically one sequence of call arrivals and holding times is generated and fed to all four systems. This means that all four systems receive the same number of Mbits per frame from all accepted calls. In all the results, C=150 Mbps, R_(k) =150 Mbps for k=1, 2, σ=0.95 and L=33.

In the first set of comparisons (see FIG. 3), it was assumed that K=1, i.e., the sources are homogeneous. The sources arrive according to a Poisson process of rate 0.03 (1/sec). The loss rate of the high priority cells is computed conditioned on the fact that n sources are active. This conditional loss probability is plotted against n in FIG. 3. FIG. 3 shows that both the Fourier analysis method and the midpoint method outperform the smallest interval method. Further, all three are much better than having no control at all. It is not difficult to understand the qualitative aspect of this result. The smallest interval method places the shaded arcs end-to-end on the circle. This means that severe bunching of the offsets is avoided, i.e., the offsets are not too close to each other. However, if there are only two or three sources which have just started transmission, then their shaded regions will lie close to one another in one part of the circle. This is to be contrasted with the midpoint method, in which if two or three sources have just started transmission, their offsets will be very far apart from each other. This explains why the latter method is better than no control and why the midpoint method is so much better than the smallest interval method. The Fourier analysis method in this case performs about the same as the midpoint method. The reason why the two graphs do not coincide is that the criterion of optimality (greatest smoothness in expected bit-rate) is different from the criterion of loss rate (which is what is shown in FIG. 3). Moreover, the fact that the Fourier analysis method chooses a point on a discrete grid makes it non-optimal.

For the case when K=2, which is referred to as the heterogeneous case, the results are shown in FIGS. 4 and 5. The sources of both types arrive according to Poisson processes of rate 0.015 (1/sec). Again, the results are obtained by a single simulation run in which the loss rate of high priority cells of both types of calls conditioned on n₁ type 1 calls and n₂ type 2 calls being active. Then, FIG. 4 is plotted with n₁ =3 with n₂ as the x-axis and FIG. 5 is the corresponding graph with n₁ =5. In both of these graphs, it is obvious that having any control method is far better than having no control. But this time, note that the Fourier analysis method far outperforms the other two heuristic methods. This is intuitive, since the two heuristics were not designed specifically for heterogeneous traffic. Imagine that n₁ =n₂ =1. The midpoint method would try to place one offset at 0 and the other at τ/2 without taking into consideration the fact that the two sources are very different in size. The Fourier analysis method, being analytical, takes into account these factors automatically. It places the offset of the type 1 source at 0 and that of the type 2 source at about 2τ/3, since a type 1 source has twice the bit-rate of a type 2 source. Also observe that when n₂ becomes large, the two heuristics perform about equally well. This is also to be expected. When the circle is more filled with shaded regions, two things happen. Either the shortest interval method reverts to the midpoint method or the shaded arcs lie reasonably close to one another with a small amount of gap. In either case, its behavior is not expected to be too different from that of the midpoint method. The low priority cell loss rate is shown in FIG. 6 for n₁ =3. The complementary distribution of queue length (unconditional) during the entire simulation is shown in FIG. 7. Again the Fourier analysis method provides the best performance for the low priority cell loss rate and the queue length distribution.

In addition to the loss probability, another measure was used to compare the three methods. This measure is the smoothness index (η), which is the square root of the quantity in Eq. (1). The square root of the quantity in Eq. (1) is used because it has the more natural units of Mbits. The computation of the smoothness index was done by two simulation runs, one for the homogeneous case and the other for the heterogeneous case. For the homogeneous and the heterogeneous cases, the (unconditional) value of the smoothness index is shown in Table 1 for the problem in which no control is exercised as well as the three control methods. As expected, the smoothness index is lowest for the Fourier analysis method, followed very closely by the midpoint method. The difference between these two and the smallest interval method as well as the no control case is more. Even by this criterion, the Fourier analysis method and midpoint methods give much better results. Note that the difference between the Fourier analysis method and the midpoint method is quite small. This is to be contrasted with the conditional loss probabilities reported for the heterogeneous case, in which the difference between these two methods was much higher. The reason this difference occurs is because of the bursty traffic. It is possible to have a difference in measures such as loss probabilities while more robust measures like mean and variance of queue length show very little difference. The smoothness measure is (in some sense) measuring the variation in the input rate. While this measure correctly preserves the relative ranking of the different control methods, it does not give the complete picture about loss probabilities.

                  TABLE 1                                                          ______________________________________                                         Smoothness index (in the unit of Mbuts) for the                                homogeneous case and the heterogeneous case.                                           no     smallest            Fourier                                             control                                                                               interval  midpoint  analysis                                    ______________________________________                                         homogeneous                                                                              26.2     22.3      21.4    21.5                                      heterogeneous                                                                            23.5     20.3      19.9    19.5                                      ______________________________________                                    

In summary, three methods for temporal placement control of video frames have been described. The results show that any reasonable form of control is much better than having no control. Of the three methods, the midpoint method is very simple and performs generally as well as the Fourier analysis method for homogeneous sources. However, for heterogeneous sources, the Fourier analysis method provides the best results.

While there has been described and illustrated several methods of temporal placement control of video frames on B-ISDN networks, it will be apparent to those skilled in the art that variations and modifications are possible without deviating from the broad principle and spirit of the present invention which shall be limited solely by the scope of the claims appended hereto. 

What is claimed is:
 1. A method of temporal placement control of video frames in B-ISDN networks comprising the steps of:dividing the inter-frame interval (τ) into a quantity of intervals equal to the quantity of active calls, and selecting the largest interval of said quantity of intervals and the midpoint of said selected largest interval is the offset for a newly arriving call.
 2. A method of temporal placement control of video frames in B-ISDN networks comprising the steps of:dividing the inter-frame interval (τ) into intervals during which a source is expected to transmit such that for n active sources, k_(j) denotes the type of source j, and the interval for source j is defined as, where E_(j) =<O_(j) +g_(k) _(j) ×10^(3/) R_(k) _(j) >where R_(k) _(j) is the access line speed, E_(j) is the interval for source j, O_(j) is the offset for the jth active call, and g_(k), is the interval length for the jth call, and selecting the smallest portion of the inter-frame interval (τ) greater than the length of a newly arriving call not within the interval for the source of said newly arriving call for the offset of said newly arriving call.
 3. A method of temporal placement control of video frames as set forth in claim 2 where when any said portion of the inter-frame interval, not including any said interval, is smaller than the length of said newly arriving call, the following steps are performed:dividing the inter-frame interval into a quantity of intervals equal to the quantity of active calls, and selecting the largest interval of said quantity of intervals and the midpoint of said selected largest interval is the offset for said newly arriving call.
 4. A method of temporal placement control of video frames is B-ISDN networks where there are n-1 calls in progress whose call types (k_(j)) access line speeds (R_(k) _(j)) and offsets (O_(j)) are known (for j=1, . . . , n-1) comprising the steps of:for an additional call n of type k_(n), having an expected bit-rate P_(n) (·) at time t, for O<t <τ, selecting the offset O_(n) of the additional call such that ##EQU18## where τ is the inter-frame interval, is minimized. 